The present invention relates to communication of video bitstreams and, more particularly, to correction of video bitstreams.
Video compression is designed to represent full motion video with as small a number of information bits as possible, and still preserve acceptable quality. Acceptable quality is defined as the level of perceived quality required by the viewer of the decoded video. To preserve acceptable quality, many video compression encoders and decoders (i.e., video codecs) try to represent each frame of encoded video by predicting it from the previously encoded frame. Generally, motion compensated prediction is used to reduce the amount of information needed to be coded for each frame. This approach is used in the ISO MPEG- 1, MPEG-2 and MPEG-4 standards, as well as in the ITU H.261 and H.263 standards. When motion compensated prediction is used between frames in a video sequence, the error in the prediction must be encoded and successfully transmitted to the decoder to preserve the quality of the decoded video sequence.
To further improve the amount of compression achieved by a video encoder, several tools or modes, in addition to motion compensated prediction, are available in today""s video compression standards. How these tools are utilized must also be transmitted to the decoder to preserve the quality of the decoded video sequence. This mode information combined with the motion information (motion vectors) prediction information (discrete cosine transform coefficients) form a video bitstream. It is this video bitstream which is transmitted to the video decoder to produce video sequences with acceptable quality.
Due to the strong dependence between the information contained in a video bitstream and the perceived quality of the decoded video sequence, video decoders are highly susceptible to bit errors. A single bit error in a video bitstream can cause a video decoder to interpret the information remaining in the bitstream incorrectly. This situation is generally referred to as a loss of synchronization. That is, the decoder is no longer synchronized with the start of the codewords contained in the video bitstream.
To guard against the possibility that the decoder and video bitstream never resynchronize, all video compression standards require that resynchronization markers be inserted into with the video bitstream at predetermined locations. These resynchronization markers are unique codewords that can be located within a video bitstream. Currently, video decoders utilize these markers to resynchronize in case of a bit error.
The ability to resynchronize after an error is important. However, it does not guarantee that the video quality will be acceptable if the video bitstream has been corrupted by an error or errors. Concealment of the information lost between resynchronization markers is necessary if acceptable video quality is to be maintained. Due to the constraints imposed by real-time operation, it is difficult for a video decoder to provide the necessary error concealment.
For instance, prior art shows that in order to provide some error concealment capabilities, an entirely new system for transmitting digital video is required. A major problem with this approach is that it does not conform to any of the known video compression standards. The method is completely dependent upon the use of a very powerful Cyclic Redundant Codes (CRC). Once an error is detected, sophisticated messaging must occur between the error detection device and the video decoder. This type of processing and communication within a device is very complicated and difficult to build. Furthermore, since it does not comply with any video compression standards, it can not interoperate with any ISO-MPEG or ITU compliant video decoder.
Thus, there is a need for a method and device to provide efficient error resilient video bitstream decoding which does not conflict with current or future video compression standards.